Field of the Invention
Embodiments of the present invention relate generally to computer science and, more specifically, to techniques for optimizing bitrates and resolutions during encoding.
Description of the Related Art
Efficiently and accurately encoding source data is essential for real-time delivery of video content. In operation, after the encoded data is received at an endpoint machine, the encoded data is decoded and viewed or otherwise further processed. To increase compression rates and/or reduce the size of the encoded data, many encoding processes leverage lossy data compression techniques that eliminate selected information, typically enabling only approximate reconstruction of the source data. Notably, as the encoder eliminates information, the resolution of the encoded data decreases and, consequently, the likelihood that the approximate reconstruction has the visual quality viewers expect and desire also decreases.
In operation, encoders are often configured to implement a fixed bitrate ladder that makes tradeoffs between resources consumed during the encoding/decoding process (e.g., processing time, bandwidth, storage, etc.) and visual quality. Each “rung” in the bitrate ladder represents a different bitrate and resolution. In general, given an available bitrate, the encoder selects the encoding bitrate and resolution based on the bitrate ladder, and then generates encoding data at the determined bitrate and resolution.
In practice, a bitrate ladder is tuned to generate encoded data having the requisite level of quality for “typical” source data. However, in situations where source data differs noticeably from “typical” source data, the tradeoffs represented by the bitrate ladder may not be appropriate. For example, if the bitrate ladder is designed to optimize tradeoffs for simple cartoons, and the source data is a detailed action movie, then the tradeoffs that the bitrate ladder imposes during encoding may result in unacceptably poor visual quality. Conversely, if the bitrate ladder is designed to optimize tradeoffs for detailed action movies, and the source data is a simple cartoon, then the tradeoffs that the bitrate ladder imposes during encoding may dramatically increase resource burdens, such as storage and bandwidth usage, without noticeably increasing visual quality.
As the foregoing illustrates, what is needed in the art are more effective techniques for selecting bitrates and resolutions when encoding source data.